home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / comm / cvt100.zip / VTSETUP.C < prev    next >
Text File  |  1988-08-03  |  25KB  |  767 lines

  1. #include <stdio.h>
  2. #include <dos.h>
  3.  
  4. #define F1    0x3B00              /* Scancode for function key F1  */
  5. #define F2    0x3C00              /* Scancode for function key F2  */
  6. #define F3    0x3D00              /* Scancode for function key F3  */
  7. #define F4    0x3E00              /* Scancode for function key F4  */
  8. #define F5    0x3F00              /* Scancode for function key F5  */
  9. #define F6    0x4000              /* Scancode for function key F6  */
  10. #define F7    0x4100              /* Scancode for function key F7  */
  11. #define F8    0x4200              /* Scancode for function key F8  */
  12. #define F9    0x4300              /* Scancode for function key F9  */
  13. #define F10   0x4400              /* Scancode for function key F10 */
  14. #define ESC   0x011b              /* Scancode for ESCape key */
  15.  
  16. /*****************************************************************************/
  17. /* function prototypes                                                       */
  18.  
  19. void TTSetup( void );             /* Communications setup function */
  20. void VidSetup( void );            /* Video setup function */
  21. void KeySetup( void );            /* Keyboard setup function */
  22. void VTSetup( void );             /* VT emulation setup */
  23. void FileSetup( void );           /* File system setup */
  24.  
  25. static void ToggleBaud( void );        /* Toggle the baud setting */
  26. static void TogglePort( void );        /* Toggle the port setting */
  27. static void ToggleParity( void );      /* Toggle the parity setting */
  28. static void ToggleDataBits( void );    /* Toggle the databits setting */
  29. static void ToggleStopBits( void );    /* Toggle the stopbits setting */
  30. static void DisplayBaud( void );       /* Display the baud setting */
  31. static void DisplayPort( void );       /* Display the port setting */
  32. static void DisplayParity( void );     /* Display the parity setting */
  33. static void DisplayDataBits( void );   /* Display the databits setting */
  34. static void DisplayStopBits( void );   /* Display the stopbits setting */
  35. static void ToggleRetrace( void );     /* Toggle the video retrace mode */
  36. static void DisplayRetrace( void );    /* Display the video retrace mode */
  37. static void ToggleBackSpace( void );   /* Toggle the backspace interpretation */
  38. static void DisplayBackSpace( void );  /* Display backspace interpretation */
  39. static void ToggleKeyClick( void );    /* Toggle the key click mode */
  40. static void DisplayKeyClick( void );   /* Display the Keyclick mode */
  41. static void ToggleKeyPadMode( void );  /* Toggle the key pad mode */
  42. static void DisplayKeyPadMode( void ); /* Display the Key Pad mode */
  43. static void ToggleForeColor( void );   /* Toggle foreground colors */
  44. static void DisplayForeColor( void );  /* Display the foreground colors */
  45. static void ToggleBackColor( void );   /* Toggle background colors */
  46. static void DisplayBackColor( void );  /* Display the background colors */
  47. static void ToggleOriginMode( void );  /* Toggle the origin Mode */
  48. static void ToggleInsertMode( void );  /* Toggle the Insert/replace Mode */
  49. static void ToggleAutoWrapMode( void );/* Toggle auto wrap mode */
  50. static void ToggleNewLine( void );     /* Toggle new line mode */
  51. static void ToggleCursorVisible( void );/* Toggle cursor visibility */
  52. static void ToggleReverseBackGround( void );/* Toggle reversed background mode */
  53. static void ToggleScreenWid( void );   /* Toggle the screen width setting */
  54. static void DisplayOriginMode( void ); /* Display the origin Mode */
  55. static void DisplayInsertMode( void ); /* Display the Insert/replace Mode */
  56. static void DisplayAutoWrapMode( void );/* Display auto wrap mode */
  57. static void DisplayNewLine( void );    /* Display new line mode */
  58. static void DisplayCursorVisible( void );/* Display cursor visibility */
  59. static void DisplayReverseBackGround( void );/* Display reversed background mode */
  60. static void DisplayScreenWid( void );  /* Display the screen width setting */
  61. static void DisplaySaveSetup( void );  /* Display Setup saved status */
  62. static void ToggleLogMode( void );     /* Toggle Log File mode */
  63. static void DisplayLogMode( void );    /* Display status of Log File */
  64. static void StartSetup(char *);        /* Begin a setup screen */
  65. static void EndSetup( void );          /* End a setup screen */
  66.  
  67. unsigned int GetKey( void );      /* Function to retrieve a keystroke */
  68.  
  69. /*****************************************************************************/
  70. /* Global Data                                                               */
  71.  
  72.  
  73. /*****************************************************************************/
  74. /* External Data                                                             */
  75.  
  76. extern unsigned int port;         /* COM port */
  77. extern unsigned int speed;        /* BAUD rate */
  78. extern char parity[5];            /* Parity setting */
  79. extern unsigned int databits;     /* Number of Data bits */
  80. extern unsigned int stopbits;     /* Number of Stop bits */
  81.  
  82. extern unsigned char retracemode; /* Video snow retrace wait mode flag */
  83. extern unsigned char forecolor;   /* Default foreground color */
  84. extern unsigned char backcolor;   /* Default background color */
  85.  
  86. extern unsigned char backspace;   /* Backspace interpretation flag */
  87. extern unsigned char keyclick;    /* Keyclick on/off flag */
  88. extern unsigned char applkeypad;  /* Application key pad mode flag */
  89.  
  90. extern unsigned originmode;       /* Origin mode, relative or absolute */
  91. extern unsigned insertmode;       /* Insert mode, off or on */
  92. extern unsigned autowrap;         /* Automatic wrap mode, off or on */
  93. extern unsigned newline;          /* Newline mode, off or on,  GLOBAL data!*/
  94. extern unsigned cursorvisible;    /* Cursor visibility, on or hidden */
  95. extern unsigned reversebackground;/* Reverse background attribute, on or off*/
  96. extern unsigned screenwid;        /* Screen column width */
  97. extern unsigned char log;         /* Logging characters */
  98.  
  99. extern char setupfile[];          /* Filename of setup file */
  100. extern char logfile[];            /* Filename of log file */
  101. extern unsigned char vidmode;     /* Video mode */
  102.  
  103. /*****************************************************************************/
  104. /* Local Static Data                                                               */
  105.  
  106. static char *vcolors[] = {        /* Array of color names */
  107.     "BLACK",        "BLUE",           "GREEN",
  108.     "CYAN",         "RED",            "MAGENTA",
  109.     "BROWN",        "LIGHTGRAY",      "DARKGRAY",
  110.     "LIGHTBLUE",    "LIGHTGREEN",     "LIGHTCYAN",
  111.     "LIGHTRED",     "LIGHTMAGENTA",   "YELLOW",
  112.     "WHITE",
  113.     };
  114.  
  115. static unsigned holdbackground;   /* Temporary holder for background setting */
  116. static unsigned char saved;       /* Flag indication setup already saved */
  117. /*****************************************************************************/
  118. /*****************************************************************************/
  119.  
  120. /*  T T S E T U P -- Enter Communications Setup Mode */
  121.  
  122. void TTSetup() {
  123.    int thru = 0;
  124.    int changes = 0;
  125.  
  126.  
  127.    StartSetup("Communications");  /* Begin this Setup Screen */
  128.  
  129.    DisplayPort();                 /* Display initial current port setting */
  130.    DisplayBaud();                 /* Display initial current baud rate setting */
  131.    DisplayParity();               /* Display initial current parity setting */
  132.    DisplayDataBits();             /* Display initial current data bits setting */
  133.    DisplayStopBits();             /* Display initial current stop bits setting */
  134.  
  135.    while( !thru ) {
  136.  
  137.       switch (GetKey()) {
  138.           case F1:                /* Toggle the COM port setting */
  139.               TogglePort();
  140.               DisplayPort();
  141.               changes = 1;
  142.               break;
  143.           case F2:                /* Toggle the baud rate setting */
  144.               ToggleBaud();
  145.               DisplayBaud();
  146.               changes = 1;
  147.               break;
  148.           case F3:                /* Toggle the parity setting */
  149.               ToggleParity();
  150.               DisplayParity();
  151.               changes = 1;
  152.               break;
  153.           case F4: